.text
.bss
.globl units
.align 4
units:
    .zero 4

.section .rodata
.align 8
.LC0:
	.string	"How many pounds to a firkin of butter?"
.LC1:
	.string	"%d"
.LC2:
	.string	"You must have looked it up!"
.LC3:
	.string	"No luck, my friend. Try again."

.text
.globl main
.type main, @function
main:
    addi sp, sp, -16
    sd ra, 8(sp)
    sd s0, 0(sp)

    lui a5, %hi(.LC0)
    addi a0, a5, %lo(.LC0)
    call puts

    lui a5, %hi(.LC1)
    addi a0, a5, %lo(.LC1)
    lui a5, %hi(units)
    addi a1, a5, %lo(units)
    call scanf

    j .WHILE_13_COMPARE
.WHILE_13_ENTER:
    call critic
.WHILE_13_COMPARE:
    lui a5, %hi(units)
    addi a5, a5, %lo(units)
    lw a5, (a5)
    sext.w a5, a5
    li a6, 56
    bne a5, a6, .WHILE_13_ENTER

    lui a5, %hi(.LC2)
    addi a0, a5, %lo(.LC2)
    call puts

    ld ra, 8(sp)
    ld s0, 0(sp)
    addi sp, sp, 16
    jr ra

.type critic, @function
critic:
    addi sp, sp, -16
    sd ra, 8(sp)
    sd s0, 0(sp)

    lui a5, %hi(.LC3)
    addi a0, a5, %lo(.LC3)
    call puts

    lui a5, %hi(.LC1)
    addi a0, a5, %lo(.LC1)
    lui a5, %hi(units)
    addi a1, a5, %lo(units)
    call scanf

    ld ra, 8(sp)
    ld s0, 0(sp)
    addi sp, sp, 16
    jr ra